package com.lxq.test2006.Main01;

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        int n,m;//n:点数  m:线数
        int[][] point;//存放A、B类点
//        String[] pointClass;

        Scanner sc = new Scanner(System.in);

        n=sc.nextInt();
        point = new int[n][3];
//        pointClass = new String[n];

        m=sc.nextInt();
//        boolean[] flag = new boolean[m];

        //1.存储点
        for (int i=0; i<n ; i++){
            point[i][0] = sc.nextInt();
            point[i][1] = sc.nextInt();
//            pointClass[i] = sc.next();
            String s = sc.next();
            if (s.equals("A")) point[i][2]=0;
            else point[i][2]=1;
        }


        boolean AisMax = true;
        //2.判断线是否可以分割AB点
        for (int i=0 ; i<m ;i++){
            //对每一条线
            int maxFlag = -1, minFlag = -1;//maxFlag:存放大于线的点类 minFlag:存放小于线的点类
            int st0,st1,st2,result;
            boolean flag = true;//假定线可以分割
            st0 = sc.nextInt();
            st1 = sc.nextInt();
            st2 = sc.nextInt();

            //2.1判断第一个点关于线的位置
            if ((st0+st1*point[0][0]+st2*point[0][1])>0){
                maxFlag = point[0][2];//将第一个点的类 赋给maxFlag
                minFlag = 1-maxFlag;
            }else if((st0+st1*point[0][0]+st2*point[0][1])<0){
                minFlag = point[0][2];
                maxFlag = 1-minFlag;
            }

            //2.2判断剩余点 是否符合第一个点的要求
            for (int j=1 ; j<n ; j++){
                if ((point[j][2]==maxFlag)&&(st0+st1*point[j][0]+st2*point[j][1])>0) {
                    flag = true;
                    continue;
                }
                else if ((point[j][2]==minFlag)&&(st0+st1*point[j][0]+st2*point[j][1])<0) {
                    flag = true;
                    continue;
                }else {
                    flag = false;//线不能分割
                    break;
                }

            }
            //2.3输出结果
            if (flag) System.out.println("Yes");
            else System.out.println("No");
        }
    }
}
